Composite Refactorings for EMF Models
نویسندگان
چکیده
Models are primary artifacts in model-based, and especially, in model-driven software development processes. Due to their central role, the quality of models must be high to lead to software products of high quality. A common technique for improving the quality of software artifacts is refactoring. Originally developed for code structure improvement, the concept of refactoring has been raised to the level of models. Especially for the UML, a lot of model refactorings have been proposed in the literature. A number of these refactorings are composed from more primitive ones. In this paper, we present a model-driven approach to the development of composite refactorings for EMF models. The specification of composite refactorings is based on a set of atomic refactorings and a domain-specific language, called CoMReL, to specify their composition. Generated model refactorings use the Eclipse Modeling Framework and further Eclipse technologies as platform. From the application point of view, composite and atomic refactorings cannot be distinguished. Specification language CoMReL as well as its supporting tool environment are evaluated at the model-driven development of a variety of composite UML and EMF model refactorings.
منابع مشابه
Specification, Execution, and Detection of Refactorings for Software Models
Predefined automatically applicable composite operations such as refactorings are a prerequisite for efficient software modeling. Some modeling environments provide an initial set of basic refactorings, but they hardly offer extension points for user-specified refactorings. Even if extension points exist, the introduction of new refactorings requires programming skills and deep knowledge of the...
متن کاملTool to Measure and Refactor Complex UML Models
Using UML modeling for designing a software product is heavily used by the industry. However the tool support for model based development have not reached the same level as the tool support of source code based development. Our goal was to provide a tool to support refactoring and static analysis of UML models, which were developed in the open source modeling framework, Papyrus [Papyrus 2014]. ...
متن کاملSpecifying Domain-Specific Refactorings for AndroMDA Based on Graph Transformation
Applying refactoring in a model-driven software engineering context raises many new challenges that need to be addressed. In this paper, we consider model-driven software development based on the code generation framework AndroMDA. Considering the UML profile for AndroMDA, we come up with a number of domain-specific model refactorings. In its most recent version, the AndroMDA code generation ca...
متن کاملEMF Model Refactoring based on Graph Transformation Concepts
The Eclipse Modeling Framework (EMF) provides a modeling and code generation framework for Eclipse applications based on structured data models. Within model driven software development based on EMF, refactoring of EMF models become a key activity. In this paper, we present an approach to define EMF model refactoring methods as transformation rules being applied in place on EMF models. Performi...
متن کاملPrecise Semantics of EMF Model Transformations by Graph Transformation
Model transformation is one of the key activities in model-driven software development. An increasingly popular technology to define modeling languages is provided by the Eclipse Modeling Framework (EMF). Several EMF model transformation approaches have been developed, focusing on different transformation aspects. To validate model transformations wrt. functional behavior and correctness, a for...
متن کامل